#include"chao_shi.h"
#include<getch.h>
#include<string.h>
#include<stdlib.h>

float zong_shou_yin;
int zhong_lei_shu;
int gai;

Shang_pin shang_pin[number];

Man_stics stics[number];
size_t stics_cnt;

Logon_vip vip[number];
size_t vip_cnt;

Guan_li_yuan guan_li_yuan[1];
size_t admin_cnt;

Shou_yin shou_yin[number];
size_t pay_cnt;


//判断ID是否重复
int bi_jiao_id(char* id)
{
	for(int i=0;i<zhong_lei_shu;i++)
	{
		if(0==strcmp(shang_pin[i].ID,id))
		{
			return i;
		}		
	}
	return -1;
}

//判断名字是否重复 
int bi_jiao_name(char* name)
{
	for(int i=0;i<vip_cnt;i++)
	{
		if(0==strcmp(vip[i].name,name))
		{
			return i;
		}
	}
	return -1;
}

//付款
void fu_kuan(void)
{
	char id[10]={};
	int count=0;
	printf("请输入货品编号：");
	get_str(id,sizeof(id));
	int index=bi_jiao_id(id);
	if(0 > index)
	{
		print_sec("抱歉，本店没有该商品",second);
		return ;
	}
	printf("请输入购买个数：");
	scanf("%d",&count);
	if(count > shang_pin[index].shu_liang || count <= 0)
	{
		print_sec("购买个数输入有误",second);
		return;
	}
			
	//商品数量改变
	shang_pin[index].shu_liang -= count;
	//计算钱和积分，将钱拷贝到销售记录
	shou_yin[pay_cnt].shou_yin_shu = (shang_pin[index].shou_jia) * count;
	//将卖出数量拷贝到销售记录
	shou_yin[pay_cnt].shu_liang = count;
	//将商品名字拷贝到销售记录
	strcpy(shou_yin[pay_cnt].name,shang_pin[index].ming_zi);
	pay_cnt++;
}

//普通用户
void pu_tong(void)
{
	char phone[12];
	printf("请输入扣款账户！");
	get_phone(phone,sizeof(phone));
	menu_pay();
	strcpy(shou_yin[pay_cnt-1].phone,phone);
	printf("您需向%s付款%.2f元\n",guan_li_yuan[admin_cnt-1].phone,zong_shou_yin);
	print_sec("购买成功！",second);
}

// 输入用户名
void vip_(void)
{
	char name[20];
	printf("请输入用户名：");
	get_str(name,sizeof(name));
	int index = bi_jiao_name(name);
	if(0 > index)
	{
		print_sec("您不是本商店VIP",second);
		return;
	}
	menu_pay();
	vip[index].ji_fen += shou_yin[pay_cnt-1].shou_yin_shu;
	strcpy(shou_yin[pay_cnt-1].phone,vip[index].phone);
	printf("您需向%s付款%.2f元\n",guan_li_yuan[admin_cnt-1].phone,zong_shou_yin);
	print_sec("购买成功！",second);
}
//交易界面
void menu_pay(void)
{
	zong_shou_yin=0.00;
	for(;;)
	{
		system("clear");
		puts("****是否继续交易****");
		puts("1、继续");
		puts("0、返回");
		switch(get_cmd('0','1'))
		{
			case '1':fu_kuan();break;
			case '0':return;
		}
	}
}


//后勤是否重复
int query_stics(const char* name)
{
	for(int i=0;i<stics_cnt;i++)
	{
	   	if(0==strcmp(stics[i].name,name))
		{
			return i;
		}
	}
	return -1;
}

//vip是否重复
int query_vip(const char* name)
{
	for(int i=0;i<vip_cnt;i++)
	{
	   	if(0==strcmp(vip[i].name,name))
		{
			return i;
		}
	}
	return -1;
}

//添加后勤账户
void register_Man_stics(void)
{
	if(stics_cnt >= number)
	{
		print_sec("用户数量已满，无法添加！",second);
		return;
	}
	// 输入用户名
	printf("请输入用户名：");
	get_str(stics[stics_cnt].name,sizeof(stics[stics_cnt].name));
	// 检查用户名是否被占用
	int index = query_stics(stics[stics_cnt].name);
	if(-1 < index)
	{
		print_sec("该用户已存在！",second);
		return;
	}
	// 输入密码
	printf("请输入密码：");
	get_passwd(stics[stics_cnt].passwd,sizeof(stics[stics_cnt].passwd));
	// 再一次输入密码
	char repasswd[7];
	printf("请输入再一次输入密码：");
	get_passwd(repasswd,sizeof(repasswd));
	// 确认密码
	if(strcmp(stics[stics_cnt].passwd,repasswd))
	{
		print_sec("两次输入的密码不符，注册失败！",second);
		return ;
	}
	// 输入电话号
	printf("请输入用于找回密码的手机号：");
	get_phone(stics[stics_cnt].phone,sizeof(stics[stics_cnt].phone));
	stics_cnt++;
	print_sec("注册成功",second);
}
//注销后勤账户
void logoff_Man_stics(void)
{
	// 输入用户名
	char name[20];
	printf("请输入用户名：");
	get_str(name,sizeof(name));
	// 查询用户是否存在
	int index = query_stics(name);
	if(-1 == index)
	{
		print_sec("该用户不存在！",second);
		return;
	}
	// 输入密码
	char passwd[7];
	printf("请输入密码：");
	get_passwd(passwd,sizeof(passwd));
	// 比较密码
	if(0 != strcmp(stics[index].passwd,passwd))
	{
		print_sec("密码错误！",second);
		return;
	}
	if(yes_or_no())
	{
		// 把最后一个用户移动给要删除的用户位置
		stics[index] = stics[stics_cnt-1];
		// 用户数量减1
		stics_cnt--;
		print_sec("注销用户成功！",second);
		return ;
	}
	print_sec("注销操作失败！",second);

}

//修改信息
void modify_Man_stics(void)
{
	// 输入用户名
	char name[20];
	printf("请输入用户名：");
	get_str(name,sizeof(name));

	// 查询用户是否存在
	int index = query_stics(name);
	if(-1 == index)
	{
		print_sec("该用户不存在！",second);
		return;
	}

	// 输入密码
	char passwd[7];
	printf("请输入密码：");
	get_passwd(passwd,sizeof(passwd));

	// 比较密码
	if(0 == strcmp(stics[index].passwd,passwd))
	{
		printf("请输入用户电话：");
		get_str(stics[index].phone,sizeof(stics[index].phone));
		print_sec("修改用户信息成功！",second);
	}
}

//遍历后勤
void show_Man_stics(void)
{
	for(int i=0; i<stics_cnt; i++)
	{
		printf("后勤用户名:%s 后勤账户密码:%s 联系电话:%s\n",
				stics[i].name,
				stics[i].passwd,
				stics[i].phone);
	}
	anykey_continue();
}

//添加vip
void register_vip(void)
{
	if(vip_cnt >= number)
	{
		print_sec("用户数量已满，无法添加！",second);
		return;
	}
	// 输入用户名
	printf("请输入用户名：");
	get_str(vip[vip_cnt].name,sizeof(vip[vip_cnt].name));
	// 检查用户名是否被占用
	int index = query_vip(vip[vip_cnt].name);
	if(-1 < index)
	{
		print_sec("该用户以存在！",second);
		return;
	}

	// 输入密码
	printf("请输入密码：");
	get_passwd(vip[vip_cnt].passwd,sizeof(vip[vip_cnt].passwd));
	// 再一次输入密码
	char repasswd[7];
	printf("请输入再一次输入密码：");
	get_passwd(repasswd,sizeof(repasswd));

	// 确认密码
	if(strcmp(vip[vip_cnt].passwd,repasswd))
	{
		print_sec("两次输入的密码不符，注册失败！",second);
		return;
	}

	// 输入电话号
	printf("请输入用于找回密码的手机号：");
	get_phone(vip[vip_cnt].phone,sizeof(vip[vip_cnt].phone));
	vip_cnt++;
	print_sec("注册成功",second);
	
}

//注销vip账户
void logoff_vip(void)
{
	// 输入用户名
	char name[20];
	printf("请输入用户名：");
	get_str(name,sizeof(name));

	// 查询用户是否存在
	int index = query_vip(name);
	if(-1 == index)
	{
		print_sec("该用户不存在！",second);
		return;
	}

	// 输入密码
	char passwd[7];
	printf("请输入密码：");
	get_passwd(passwd,sizeof(passwd));

	// 比较密码
	if(0 != strcmp(vip[index].passwd,passwd))
	{
		print_sec("密码错误！",second);
		return;
	}
	if(yes_or_no())
	{
		vip[index].ji_fen=0;
		// 把最后一个用户移动给要删除的用户位置
		vip[index] = vip[vip_cnt-1];
		// 用户数量减1
		vip_cnt--;
		return ;
		print_sec("注销用户成功！",second);
		return ;
	}
	print_sec("注销操作失败！",second);
		
	
}
void change(int index)
{
	//修改联系电话
	printf("请输入新的用户电话：");
	get_str(vip[index].phone,sizeof(vip[index].phone));
	print_sec("修改用户信息成功！",second);
}

void exchange(int index)
{
	//兑换物品
	printf("您有%.2f积分\n",vip[index].ji_fen);
	printf("请选择要换物品的积分!\n");
	float repoints;
	scanf("%f",&repoints);
	if(0<=repoints)
	{
		print_sec("没有此积分的物品！",second);
		return;
	}

	//积分变化
	vip[index].ji_fen -= repoints;	
	printf("您还有.%2f积分\n",vip[index].ji_fen);
	print_sec("兑换成功！",second);
}

void menu_modify(int index)
{
	for(;;)
	{
		system("clear");
		puts("1、兑换物品");
		puts("2、修改信息");
		puts("0、返回");
		switch(get_cmd('0','9'))
		{
			case '1':exchange(index);break;
			case '2':change(index);break;
			case '0':return;
		}
	}
}
//修改信息
void modify_vip(void)
{
	// 输入用户名
	char name[20];
	printf("请输入用户名：");
	get_str(name,sizeof(name));

	// 查询用户是否存在
	int index = query_vip(name);
	if(-1 == index)
	{
		print_sec("该用户不存在！",second);
		return;
	}

	// 输入密码
	char passwd[7];
	printf("请输入密码：");
	get_passwd(passwd,sizeof(passwd));

	// 比较密码
	if(0 != strcmp(vip[index].passwd,passwd))
	{
		print_sec("密码错误！",second);
		return;
	}
	menu_modify(index);	

}
//遍历vip用户
void show_vip(void)
{
	for(int i=0; i<vip_cnt; i++)
	{
		printf("vip用户名：%s vip账户密码：%s vip联系电话：%s vip积分：%.2f\n",
				vip[i].name,
				vip[i].passwd,
				vip[i].phone,
				vip[i].ji_fen);
	}
	anykey_continue();
}


//查看收款记录
void view_record(void)
{
	for(int i=0; i<pay_cnt; i++)
	{
		printf("付款人：%11s 商品名称：%4s 出售数量：%d 收款：%.2f 收款人 %s\n",
				shou_yin[i].phone,
				shou_yin[i].name,
				shou_yin[i].shu_liang,
				shou_yin[i].shou_yin_shu,
				guan_li_yuan[0].phone);
	}
	anykey_continue();

}




int query_shang_pin(const char* name)  //判断是否重复
{
	for(int i=0; i<zhong_lei_shu; i++)
	{
		if(0 == strcmp(shang_pin[i].ID,name))
		{
			return i;
		}
	}
		return -1;
}






void add_new(void)                     //添加商品
{
	int i = zhong_lei_shu,chong_fu;
	if(zhong_lei_shu+1 > number)            //判断商品是否过多
	{
		print_sec("\n输入商品数量过多，仓库放不下！",second);
		return;
	}
	system("clear");
	printf("本次为商店的第%d项商品\n",zhong_lei_shu+1);
	printf("请依次输入货物信息：\n");
	printf("商品ID号："); 
	fflush(stdin);                     //清空输入流
	scanf("%s",shang_pin[i].ID);       //输入ID号

	chong_fu = query_shang_pin(shang_pin[i].ID);
	if(-1 < chong_fu)                  //判断是否重复ID
	{
		print_sec("商品ID重复，无法添加",second);
		return;
	}
		
	printf("商品名：");
	fflush(stdin);                     //清空输入流
	scanf("%s",shang_pin[i].ming_zi);  //输入商品名 
		
	printf("进价: ");
	fflush(stdin);                     //清空输入流
	scanf("%f",&shang_pin[i].jin_jia);//输入进价 
		
	printf("售价：");
	fflush(stdin);                     //清空输入流
	scanf("%f",&shang_pin[i].shou_jia);//输入售价 
		
	printf("数量：");
	fflush(stdin);                     //清空输入流
	scanf("%d",&shang_pin[i].shu_liang);//输入数量 

	if(shang_pin[i].shu_liang <= 0)
	{
		print_sec("商品数量过少，无法入库！",second);
		return;
	}
		
	printf("保质期（天数）："); 
	fflush(stdin);                     //清空输入流
	scanf("%d",&shang_pin[i].bao_zhi_qi);//输入保质期

	if(shang_pin[i].bao_zhi_qi <= 0)
	{
		print_sec("商品已过期，不能入库！",second);
		return;
	}
	printf("\n");

	printf("------------------------\n");
	zhong_lei_shu++;
	return ;
}


void off_shelf(void)                   //下架商品
{
	system("clear");
	printf("输入要下架的商品ID:");
	int chong_fu;
	char i[10];
	scanf("%s",i);                 //输入商品ID号
	chong_fu = query_shang_pin(i);
	if(-1 == chong_fu)
	{
    	print_sec("没有该ID对应的商品，下架失败",second);
		return;
	}
	else
	{
		shang_pin[chong_fu] = shang_pin[zhong_lei_shu-1];
    	zhong_lei_shu--;
		print_sec("下架成功",second);
		return;
	}
}

void re_plenish()                      //增加商品数量
{
	system("clear");
	printf("输入要添货的商品ID:");
	int chong_fu,shu_liang2;
	char id[10];
	scanf("%s",id);       //输入商品ID号
	chong_fu = query_shang_pin(id);
	if(-1 == chong_fu)
	{
    	print_sec("没有该ID对应的商品，添加失败",second);
		return;
	}
	else
	{
		printf("请输入需要增加的数量：");
		scanf("%d",&shu_liang2);
		if(shu_liang2 < 0)
		{
			print_sec("输入数量不正确，增加失败!",second);
			return;
		}
		shang_pin[chong_fu].shu_liang += shu_liang2;
		return;
	}
}


void frm_loss()                        //过期报损
{
    int liang = 0;

	printf("\n过期商品查找成功\n");
	for(int i = 0 ;i <zhong_lei_shu; i++)
	{
    	if(0 >= shang_pin[i].bao_zhi_qi)
		{
			liang++;
		}
	}
	if(0 == liang)
	{
		print_sec("\n目前商店中无过期商品",second);
	}
	else
	{
        printf("\n过期商品数量为：%d\n",liang);
    	printf("过期报损的商品ID号为：");
    	for(int i = 0 ;i <zhong_lei_shu; i++)
    	{
        	if(0 >= shang_pin[i].bao_zhi_qi)
	    	{
		    	printf("%s ",shang_pin[i].ID);
	        	strcpy(shang_pin[i].ID,"\0");
	    	}
    	}
        printf("\n已将其下架\n");
    	zhong_lei_shu -= liang;
    	anykey_continue();
	}
}

void gai_jin_jia(void)                 //修改进价
{
	float jin_jia2;
	printf("请输入新的商品进价：");
	scanf("%f",&jin_jia2);
	shang_pin[gai].jin_jia = jin_jia2;
}

void gai_shou_jia(void)                //修改售价
{
	float shou_jia2;
	printf("请输入新的商品售价：");
	scanf("%f",&shou_jia2);
	shang_pin[gai].shou_jia = shou_jia2;
}
void gai_shu_liang(void)               //修改数量
{
	int shu_liang2;
	printf("请输入新的商品数量：");
	scanf("%d",&shu_liang2);
	shang_pin[gai].shu_liang = shu_liang2;
}
void gai_ming_zi(void)                 //修改名字
{
	char ming_zi2[20];
	printf("请输入新的商品名字：");
	scanf("%s",ming_zi2);
	strcpy(shang_pin[gai].ming_zi,ming_zi2);
}

void modigy(void)                      //修改商品信息
{
	char id[10];
	system("clear");
	printf("请输入需要修改商品的ID：");
	scanf("%s",id);       //输入商品ID号
	gai = query_shang_pin(id);
	if(-1 == gai)
	{
    	print_sec("没有该ID对应的商品，无法修改",second);
		return;
	}
	else
	{
		printf("请在下面输入需要修改的项目（1进价，2售价，3数量，4名字，5生产日期）\n");
		switch(get_cmd('1','5'))
		{
	    	case '1': gai_jin_jia();   break;
	    	case '2': gai_shou_jia();  break;
	    	case '3': gai_shu_liang(); break;
	    	case '4': gai_ming_zi();   break;
			case '5': print_sec("想改生产日期？作为良心商家，不行！",second);break;
		}
	}
}

void show_shang_pin(void)              //遍历
{
	printf("\n");
	if(0 == zhong_lei_shu)
	{
		printf("本商店目前没有商品\n\n");
	}
	for(int i=0; i<zhong_lei_shu; i++)
	{
        printf("\n商品ID号：%s\n商品名字：%s\n商品进价：%.2f\n商品售价：%.2f\n商品数量：%d\n商品保质期：%d\n",
			shang_pin[i].ID,
			shang_pin[i].ming_zi,
			shang_pin[i].jin_jia,
			shang_pin[i].shou_jia,
			shang_pin[i].shu_liang,
			shang_pin[i].bao_zhi_qi);
	}
	anykey_continue();
}

void seek(void)                        //查找商品
{
	char cha_zhao[10];
	system("clear");
	printf("请输入需要查找的商品的ID：");
	get_str(cha_zhao,sizeof(cha_zhao));
	int chong_fu = query_shang_pin(cha_zhao);
	if(-1 < chong_fu)
	{
        printf("商品ID号：%s\n商品名字：%s\n商品进价：%.2f\n商品售价：%.2f\n商品数量：%d\n商品保质期：%d\n",
		    shang_pin[chong_fu].ID,
			shang_pin[chong_fu].ming_zi,
			shang_pin[chong_fu].jin_jia,
			shang_pin[chong_fu].shou_jia,
			shang_pin[chong_fu].shu_liang,
			shang_pin[chong_fu].bao_zhi_qi);
    	anykey_continue();
		return;
	}
	print_sec("没有找到该商品\n",second);
}

void look_over(void)                   //查看需要补货
{
	int bu_huo_shu=0;
	for(int i = 0; i<zhong_lei_shu ;i++)
	{
		if(0 == shang_pin[i].shu_liang)
		{
			bu_huo_shu++;
			if(1 == bu_huo_shu)
			{
            	system("clear");
				printf("需要补货的商品ID为：");
			}
	    	printf("%s ",shang_pin[i].ID);
		}
	}
	if(0 == bu_huo_shu)
	{
    	print_sec("\n没有需要补货的商品",second);
		return;
	}
	else
	{
		printf("\n\n");
    	anykey_continue();
	}
}

//收银菜单 
void menu_shou_yin(void)
{

	for(;;)
	{
		system("clear");
		puts("****收银系统****");
		puts("1、我是普通用户");
		puts("2、我是vip用户");
		puts("0、返回");
		switch(get_cmd('0','2'))
		{
		case '1':pu_tong();break;
		case '2':vip_();break;
		case '0':return;
		
		}
	}
}

//vip主界面
void logon_vip(void)
{
	
	
	for(;;)
	{
		system("clear");
		puts("****vip系统****");
		puts("1、添加vip账户");
		puts("2、注销vip账户");
		puts("3、修改vip信息");
		puts("4、遍历vip账户");
		puts("0、返回");
		switch(get_cmd('0','4'))
		{
		case '1':register_vip();break;
		case '2':logoff_vip();break;
		case '3':modify_vip();break;
		case '4':show_vip();break;
		case '0':return;
		}
	}
}
//收款日志系统
void coll_acc(void)
{

	for(;;)
	{
		system("clear");	
		puts("****收款系统****");
		puts("1、查看收款记录");
		puts("0、返回");
		switch(get_cmd('0','1'))
		{
		case '1':view_record();break;
		case '0':return;
		}
	}
}

//后勤菜单 
void man_hou_qin(void)  //菜单
{
	for(;;)
	{
    	system("clear");
		puts("*****超市后勤管理系统*****");
    	puts("1、添加新的商品");
    	puts("2、下架无用商品");
    	puts("3、增加商品数量");
    	puts("4、遍历所有商品");
    	puts("5、过期商品报损");
    	puts("6、修改商品信息");
    	puts("7、查找所需商品");
    	puts("8、查看缺货商品");
    	puts("0、退出后勤系统");
   		switch(get_cmd('0','8'))
   		{
    		case '1':add_new();break;
    		case '2':off_shelf();break;
    		case '3':re_plenish();break;
    		case '4':show_shang_pin();break;
    		case '5':frm_loss();break;
    		case '6':modigy();break;
    		case '7':seek();break;
    		case '8':look_over();break;
    		case '0':return;
		}
	}
}

//登录后勤
 void login_logistics(void)
 {
    //输入用户名
     char name[20];
     printf("请输入用户名：");
     get_str(name,sizeof(name));

     //用户名是否存在
     int index=query_stics(name);
     if(-1==index)
     {
         print_sec("用户名不存在！",second);
         return;
     }
 
     // 输入密码
     char repasswd[7];
     printf("请输入输入密码：");
     get_passwd(repasswd,sizeof(repasswd));
 
     //密码是否正确
     if(0==strcmp(stics[index].passwd,repasswd))
     {
         print_sec("登陆成功！",second);
         man_hou_qin();
         return;
     }
     else
     {
         print_sec("密码错误，登录失败！",second);
         return;
     }
}

//后勤主界面
void man_stics(void)
{
	
	for(;;)
	{
		system("clear");
		puts("****管理后勤系统****");
		puts("1、添加后勤账户");
		puts("2、注销后勤账户");
		puts("3、修改账户信息");
		puts("4、遍历后勤账户");
		puts("0、返回");
		switch(get_cmd('0','4'))
		{	
		case '1':register_Man_stics();break;
		case '2':logoff_Man_stics();break;
		case '3':modify_Man_stics();break;
		case '4':show_Man_stics();break;
		case '0':return;
		}
	}
}

//管理员菜单 
void menu_guan_li(void)
{
	for(;;)
	{
		system("clear");
	puts("****管理员系统****");
	puts("1、管理后勤账户");
	puts("2、管理vip账户");
	puts("3、管理收款账户");
	puts("0、退出管理系统");
	
	switch(get_cmd('0','3'))
		{
		case '1':man_stics();break;
		case '2':logon_vip();break;
		case '3':coll_acc();break;
		case '0':return;
		}
	}

}

//注册管理员
void re_guan_li_yuan(void)
{
	if(1<=admin_cnt)
	{
		print_sec("已注册管理员用户！",second);
		return;
	}
	printf("请输入用户名：");
	get_str(guan_li_yuan[admin_cnt].name,sizeof(guan_li_yuan[admin_cnt].name));
	// 输入密码
	printf("请输入密码：");
	get_passwd(guan_li_yuan[admin_cnt].passwd,sizeof(guan_li_yuan[admin_cnt].passwd));
	// 再一次输入密码
	char repasswd[7];
	printf("请输入再一次输入密码：");
	get_passwd(repasswd,sizeof(repasswd));
	// 确认密码
	if(strcmp(guan_li_yuan[admin_cnt].passwd,repasswd))
	{
		print_sec("两次输入的密码不符，注册失败！",second);
		return;
	}
	// 输入电话号
	printf("请输入用于找回密码的手机号：");
	get_phone(guan_li_yuan[admin_cnt].phone,sizeof(guan_li_yuan[admin_cnt].phone));
	print_sec("管理员注册成功!",second);
	admin_cnt++;
	print_sec("注册成功",second);
}

//登录管理员系统
void login_guan_li(void)
{
	//输入用户名
	char rename[20];
	printf("请输入用户名：");
	get_str(rename,sizeof(rename));
	if(0==strcmp(guan_li_yuan[admin_cnt-1].name,rename))
	{
		// 输入密码
		char repasswd[7];
		printf("请输入输入密码：");
		get_passwd(repasswd,sizeof(repasswd));
		//检查用户名和密码是否正确
		if(0==strcmp(guan_li_yuan[admin_cnt-1].passwd,repasswd))
		{
			print_sec("登陆成功！",second);
			menu_guan_li();
			return;
		}
		else
		{
			print_sec("密码错误！",second);
			return;
		}
	}
	else
	{
		print_sec("用户名错误！",second);
		return;
	}
}


//主菜单函数
void Menu(void)
{
	system("clear");
	puts("****欢迎使用超市管理系统****");
	puts("1.进入管理员系统");
	puts("2.进入后勤系统");
	puts("3.进入收银系统");
	puts("4.注册管理员帐号");
	puts("0.退出程序");
}
void save(void)
{
	save_data(stics,sizeof(Man_stics)*stics_cnt,"man_stics.dat"); 
	save_data(vip,sizeof(Logon_vip)*vip_cnt,"logon_vip.dat");
	save_data(shang_pin,sizeof(Shang_pin)*zhong_lei_shu,"cang_ku.dat"); 
	save_data(shou_yin,sizeof(Shou_yin)*pay_cnt,"phy.dat");
	save_data(guan_li_yuan,sizeof(Guan_li_yuan)*admin_cnt,"guan_li_yuan.dat");
}
void load(void)
{	
	stics_cnt=load_data(stics,sizeof(stics),"man_stics.dat")/sizeof(Man_stics);
	vip_cnt=load_data(vip,sizeof(vip),"logon_vip.dat")/sizeof(Logon_vip);
        zhong_lei_shu=load_data(shang_pin,sizeof(shang_pin),"cang_ku.dat")/sizeof(Shang_pin);
	pay_cnt=load_data(shou_yin,sizeof(shou_yin),"phy.dat")/sizeof(Shou_yin);
	admin_cnt=load_data(guan_li_yuan,sizeof(guan_li_yuan),"guan_li_yuan.dat")/sizeof(Guan_li_yuan);
}
